package com.atguigu.gulimall.gulimallmember;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;

/**
 * 1、整合mybatis-plus
 *     1)、添加mybatis-plus依赖（mybatis-plus-boot-starters）
 *     2)、配置
 *          1、配置数据源
 *              1）、导入数据库驱动（mysql-connector-java）
 *              2)、配置数据源
 *          2、配置mybatis
 *              1）、使用@MapperScan扫描Mapper(dao)接口
 *              2）、告诉mybatis-plus，sql文件的映射位置
 *    ----------------------------------------------------------------------------------------
 *  2、服务注册到nacos(注册中心)
 *      1、导入nacos discovery starter(在gulimall-common中已经导入，所以可忽略)
 *      2、配置Nacos Server地址
 *          1）、 spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
 *          2）、配置应用名   application.name=gulimall-coupon
 *      3、使用@EnableDiscoveryClient注解开启服务注册与发现功能
 *   ----------------------------------------------------------------------------------------
 *  3、远程调用别的服务
 *      1）、引入open-feign
 *      2）、编写一个接口，告诉springcloud这个接口需要调用远程服务,添加@@FeignClient("gulimall-coupon")
 *          1、声明接口的每一个方法都是调用哪个远程服务的哪个请求
 *      3）、开启远程调用功能@EnableFeignClients(basepages="")
 *
 *
 *
 */
@EnableFeignClients(basePackages = "com.atguigu.gulimall.gulimallmember.feign")
@EnableDiscoveryClient
@SpringBootApplication
@MapperScan("com.atguigu.gulimall.gulimallmember.dao")
public class GulimallMemberApplication {

    public static void main(String[] args) {
        SpringApplication.run(GulimallMemberApplication.class, args);
    }

}
